Digital signal processing (DSP) techniques have greatly extended the capabilities and cost-effectiveness of electronic test and measurement instruments. A drawback, however, has been DSP's reliance on sampled data.
In sampled data systems, a signal under analysis is represented by one or more attributes at periodically spaced intervals. A familiar example is an electrical signal whose magnitude is sampled at periodic time intervals. This sampled set of data is used to represent the signal in subsequent analysis. Another example is an electrical signal whose spectral composition is sampled at periodic frequency intervals. This type of sampling is familiar from the bar graph display on a spectrum analyzer, wherein each bar (or line) represents the amplitude or power of the signal at a discrete frequency.
While representation of data in a sampled fashion facilitates use of powerful analysis techniques (such as the Fast Fourier Transform, or FFT), it introduces ambiguities in the knowledge base. In particular, attributes of the signal between the periodically spaced intervals are unknown. Interpolation is sometimes used to ameliorate this failing.
Interpolation typically involves the application of a set of assumptions to known data points so as to gain an understanding about the behavior of the data between these points. In a familiar case, the assumption is that the data changes linearly between the data points. This assumption results in straight lines connecting the known data points. In other cases, the assumption is that the data takes the shape of a smooth curve which can be approximated by a fitting a polynomial equation to successive ones of the known data points.
In digital signal analysis, these prior art interpolation techniques have a serious failing. They tend to corrupt data in the other domain. For example, a sampled signal in the time domain may be transformed to a sampled signal in the frequency domain by an FFT. If the sampled frequency domain signal is interpolated to yield a continuous spectral function, and this continuous function is then transformed back to the time domain, the resulting time domain signal will no longer match the original time domain signal. This corruption is due to the interpolation in the frequency domain.
Likewise, if a sampled frequency domain signal is transformed into the time domain, interpolated, and then transformed back into the frequency domain, the frequency domain representation will be significantly altered, The corruption is again due to interpolation--this time in the time domain.
The latter problem of time domain interpolation has been addressed by techniques disclosed in my above-referenced applications. The former problem of frequency domain interpolation persists.
In accordance with the present invention, interpolation of a sampled frequency domain signal is accomplished while preserving the corresponding data in the time domain within some specified degree of error. In the preferred embodiment, this is achieved as follows: In the time domain, a particular record of interest, having length T', is identified within a longer record having length T. This longer record is transformed into the frequency domain using an FFT, resulting in a set of discrete frequency domain samples spaced at a frequency of 1/T. This discrete spectrum is then convolved with a continuous convolution kernel to provide an interpolated curve. This curve represents the spectral composition of the signal at all frequencies, including those between the original discrete frequency domain samples produced by the FFT. This curve can be resampled at frequencies of particular interest (such as 1/T) for use in subsequent analysis.
The accuracy of this technique is dependent on the particular convolution kernel used, and on the length of record T relative to T'. In the time domain, the convolution kernel corresponds to a window (the "interpolation window") that eliminates all but one of the periods T of the time record. Ideally, this window would have the shape of a rectangle centered on the interval T. Such a window would pass all data in the window without distortion, and would perfectly attenuate all data outside this time interval. The continuous convolution kernel of such a rectangular window, however, is infinite in extent and thus presents difficulties in implementation.
An alternative, generally preferable interpolation window is one that is substantially flat over the record T' of particular interest, and then slopes down to a suitable attenuation level for all times outside the longer record T. Convolution kernels for such compromise interpolation windows are relatively straightforward to implement.
In the preferred embodiment, the values of the time record outside the period of particular interest T'--but still within the longer record T--are forced to zero. These points are not the subject of the analysis, and this expedient enhances the rectangular attributes of the compromise interpolation window.
By such techniques, it is possible to accurately resample at interpolated points in a sampled frequency domain. The accuracy of this technique is limited only by the flatness of the compromise interpolation window and by the degree of attenuation of the images beyond the T interval. This window can be forced to an arbitrary specification by choosing an appropriate convolution kernel. Thus, frequency domain interpolation of arbitrary accuracy can be achieved.
The foregoing and additional features and advantages of the present invention will be more readily apparent from the following detailed description, which proceeds with reference to the accompanying drawings.